Multiple computers are often interconnected into a local area network (LAN) to enable such computers to exchange information and share resources. A local area network provides a distributed computing environment in which users can access distributed resources and process applications on multiple computers. A known distributed computing environment, called DCE, has been implemented using software available from the Open Systems Foundation (OSF). In a distributed computing environment, a group of machines is typically referred to as a "domain." An OSF DCE domain is called a "cell." A DCE cell can be a complex environment involving hundreds of machines in many locations.
As DCE environments become the enterprise solution of choice, many DCE applications may be utilized to provide distributed services such as data sharing, printing services and database access. OSF DCE includes a distributed file system, called Distributed File Services (DFS), for use in these environments. DFS provides data sharing services by making use of Remote Procedure Calls (RPCs) for data transfer, a Cell Directory Service (CDS) for naming, and a DCE Security Service for authentication services. In addition to its use of DCE services, DFS itself is rich in features. It provides a uniform global filespace which allows all DFS client users to see the same view of the filespace, and it caches filesystem data at the client for improved scalability and performance by reducing network traffic to file servers. DFS also supports advisory file locking. One of the features of DFS is the ability to export the operating system's native filesystem. In the case of the AIX operating system, the native filesystem is the Journaled File System (JFS). In addition, DFS also provides its own physical filesystem, the DCE Local File System (LFS). The DCE LFS provides support for DCE ACLs (Access Control Lists) on files and directories for securing access to data and advanced data management capabilities such as replication and load balancing.
The OSF DCE DFS was derived from an earlier distributed file system commonly known as AFS. Another known distributed file system was developed by Sun Microsystems and is commonly referred to as Network File System (NFS). Although DCE DFS and NFS are both distributed file system products, the two products are very different in their data-sharing models and semantics. NFS relies on a peer to peer model between machines while DFS operates within an autonomous administrative unit, namely the DCE cell. Semantically, NFS is a stateless system implying that the NFS server does not maintain information about the client requests. DFS maintains state on file and directory information in order to provide Unix single-site semantics through the use of an internal token manager. Administration of a DFS environment is centralized whereby a system administrator can complete the majority of filesystem administration from a single system within the cell. Administration of an NFS environment, on the other hand, often involves updating information on each NFS client system in the environment.
Given these differences, it has proven difficult to allow such distributed file systems to coexist or interoperate in one environment. However, there are several scenarios where this may be desirable. To this end, current DCE DFS provides access to the DFS filespace by allowing an NFS server to export the DFS's client's view of the global filespace (which is the Cache Manager's virtual filesystem implementation accessible via a VFS switch) to an NFS client machine. This functionality, however, is limited to allowing unauthenticated access to the DFS global filespace since NFS is unaware of DCE authentication. As a result, NFS-originated DFS requests are treated as anonymous accesses to the DFS filespace.
There remains a need to provide authenticated access to the DCE DFS filespace from NFS or still other distributed file system products to thereby allow these advanced file systems to coexist and interoperate.